package pojazdy;

import interfaces.Hamujacy;
import interfaces.Jezdzacy;
import interfaces.Przyspieszajacy;

import java.awt.*;

/**
 * Autor: Daniel Michalski
 * Data: 01.08.13
 */

public class Rower implements Jezdzacy, Przyspieszajacy, Hamujacy {
    private String marka;
    private Color kolor;
    private int predkosc;
    private WielkoscKol wielkoscKol;

    public Rower(String marka, Color kolor, int predkosc, WielkoscKol wielkoscKol) {
        this.marka = marka;
        this.kolor = kolor;
        this.predkosc = predkosc;
        this.wielkoscKol = wielkoscKol;
    }

    public void jedz() {
        System.out.println("Rower jedzie z predkoscia " + predkosc + "km/h");
    }

    public void przyspiesz(int OilePrzyspiesz) {
        this.predkosc += OilePrzyspiesz;
        System.out.println("Rower przyspiesza o " + OilePrzyspiesz +
                "km/h i rower jedzie z predkoscia " + predkosc + "km/h");
    }


    public void hamuj() {
        System.out.println("Rower hamuje ");
        for (int i = predkosc; i > 0; i--) {
            this.predkosc = i;
            System.out.println(predkosc + "km/h");
            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
                System.out.println("Wystapil wyjatek " + e);
            }
        }
        System.out.println("Rower wyhamowal");
    }

    public String getMarka() {
        return marka;
    }

    public void setMarka(String marka) {
        this.marka = marka;
    }

    public Color getKolor() {
        return kolor;
    }

    public void setKolor(Color kolor) {
        this.kolor = kolor;
    }

    public int getPredkosc() {
        return predkosc;
    }

    public void setPredkosc(int predkosc) {
        this.predkosc = predkosc;
    }

    public WielkoscKol getWielkoscKol() {
        return wielkoscKol;
    }

    public void setWielkoscKol(WielkoscKol wielkoscKol) {
        this.wielkoscKol = wielkoscKol;
    }

    public String toString() {
        return "Rower[" +
                "marka=" + marka +
                ", kolor=" + kolor +
                ", predkosc=" + predkosc +
                ", wielkoscKol=" + wielkoscKol +
                "]";
    }
}
